Electronic message redacting

ABSTRACT

A mechanism is provided for controlling the content of an electronic message on an electronic messaging system including a plurality of communities that facilitates the tailoring of the content of a posted electronic message to the interests and/or access privileges of such communities. An electronic lexicon is provided for each community, the lexicon defining content relevant to the community. The electronic message is interpreted for disclosure to a particular community to identify content in the message relating to content in the electronic lexicon of the particular community. The electronic message is redacted based on the identified related content if the electronic message contains content in a form unsuitable for the disclosure.

BACKGROUND

The present invention relates to a method of controlling the content ofan electronic message on an electronic messaging system.

Nowadays, information is routinely disseminated using social media, i.e.electronic messaging systems such as Facebook, Twitter, and LinkedIn toname but a few of many examples. Other examples may include enterpriseor other business forums where users post messages to disseminate suchinformation.

An author of such an electronic message typically intends to reach thewidest possible target audience on the electronic messaging system.However, this objective is not always achieved because the message maynot be drafted in such a manner that it appeals to at least some membersof the target audience. In particular, the electronic message maycontain content that is not of interest to or cannot be understood bythese members.

At the same time, such an electronic message may contain restrictedcontent that should only be accessible to some members of the targetaudience, e.g. members of certain communities. In other words, theaudience of the electronic messaging system having access to the messagemay contain members to which some of the content of the message shouldnot be disclosed.

It is often practically impossible for the author of the message todefine a set of rules or otherwise compile the message such that themessage content meets the needs of every community having access to themessage. For instance, the author simply may not possess the knowledgeof the composition of the community or the author may be a member ofmany different communities such that it simply is impossible to meet theneeds of every community, for instance because different communities mayhave conflicting requirements.

In U.S. Pat. No. 8,630,968 B2, mechanisms are provided directed towardmonitoring a user's interaction with a website when the user isutilizing an enterprise device to conduct the interaction. Themonitoring of the interaction can lead to the generation of one or moreautomated responses to control the interaction in accordance withenterprise policy or rules. The types of interactions which can becontrolled include interactions where the user is attempting to postdata on the website. This may be used to prevent a user from postinginappropriate data on the website. However, such control does not takeinto consideration the target audiences of the user, such that theposted message may still provide content that is irrelevant to at leastcertain parts of the audience, which may hamper dissemination of therelevant content to the intended audiences, for instance because therelevant content is hidden in an electronic message that does not appealto the intended audience or because the relevant content is not providedin a suitable form.

SUMMARY

This Summary is provided to introduce a selection of concepts in asimplified form that are further described herein in the DetailedDescription. This Summary is not intended to identify key factors oressential features of the claimed subject matter, nor is it intended tobe used to limit the scope of the claimed subject matter.

In one illustrative embodiment, a method, in a data processing system,is provided for controlling the content of an electronic message on anelectronic messaging system including a plurality of communities. Theillustrative embodiment provides a separate electronic lexicon for eachcommunity in the plurality of communities, each lexicon defining contentrelevant to its associated community. The illustrative embodimentinterprets the electronic message for disclosure to a particularcommunity to identify content in the electronic message relating tocontent in the electronic lexicon of the particular community. Theillustrative embodiment redacts one or more pieces of content in theelectronic message based on the identified related content responsive tothe electronic message comprising content in a form unsuitable for thedisclosure, thereby forming a redacted electronic message. Theillustrative embodiment posts the redacted electronic message to theelectronic messaging system.

In other illustrative embodiments, a computer program product comprisinga computer-readable storage medium is provided. The computer readableprogram, when executed on a computer system, causes the computing deviceto perform various ones of, and combinations of, the operations outlinedabove with regard to the method illustrative embodiment.

According to yet another aspect, In yet another illustrative embodiment,there is provided a computer system is provided, comprising theaforementioned computer program product and a processor arrangementcommunicatively coupled to the computer program product and adapted toexecute said instructions. Such a computer system, which also may hostthe electronic messaging system, therefore benefits from the inclusionof the computer program product in that computer system may producedata, i.e. messages, having content tailored to a particular audience.The system/apparatus may comprise one or more processors and a memorycoupled to the one or more processors. The memory may compriseinstructions which, when executed by the one or more processors, causethe one or more processors to perform various ones of, and combinationsof, the operations outlined above with regard to the method illustrativeembodiment.

These and other features and advantages of the present invention will bedescribed in, or will become apparent to those of ordinary skill in theart in view of, the following detailed description of the exampleembodiments of the present invention.

BRIEF DESCRIPTION OF THE DRAWINGS

Preferred embodiments of the present invention will now be described, byway of example only, with reference to the following drawings, in which:

FIG. 1 schematically depicts a hierarchical structure of an electronicmessaging system according to an embodiment;

FIG. 2 is a flowchart of an electronic message content control methodaccording to an aspect;

FIG. 3 schematically depicts an electronic message annotated inaccordance with the method of FIG. 2;

FIG. 4 schematically depicts an electronic message redacted inaccordance with the method of FIG. 2:

FIG. 5 schematically depicts an electronic message processed inaccordance with the method of FIG. 2 during compilation of the message;

FIG. 6 is a flowchart, of an electronic message content control methodaccording to another aspect;

FIG. 7 is a flowchart of an electronic message content control methodaccording to yet another aspect; and

FIG. 8 schematically depicts a computer system according to anembodiment.

DETAILED DESCRIPTION

It should be understood that the Figures are merely schematic and arenot drawn to scale. It should also be understood that the same referencenumerals are used throughout the Figures to indicate the same or similarparts.

In the context of the present application, reference is made to anelectronic messaging system. Such a system may be a hosted applicationthat facilitates the posting of messages to the system by a user foraccess by another user, Such an electronic message may take any suitableshape, e.g. a tweet, blog, and so on. The electronic messaging systemtypically is accessible over a communication network, which may be aclosed communication network such as an enterprise network, e.g. anenterprise LAN or the like, or may be an open communication network,e.g. the Internet or the like. The electronic messaging system may beimplemented in any suitable manner, such as an electronic databasecomprising a plurality of data records in which each data record mayhold one or more electronic messages. Other suitable implementations ofsuch systems, e.g. tree-like implications will be immediately apparentto the skilled person as such electronic messaging systems arewell-known per se.

In at least some embodiments, the present invention seeks to tailor thecontent of electronic messages posted to the electronic messaging systemfor instance based on established information regarding the interests,knowledge and/or clearance of a target audience or any other suitablecriterion to which the electronic message is potentially addressed inorder to improve the relevance or suitability of the electronic messageto its target audience. At least some of such tailoring may be providedprior to posting the electronic message to the electronic messagingsystem. Alternatively or additionally, at least some of such tailoringmay be provided upon a member of a particular target audience attemptingto access the electronic message. In the context of the presentapplication, a message may be a document, forum post, blog entry, and soon. Typically, such a message is characterized by comprisingunstructured data, e.g. written text.

The established information may be collected in a dictionary or lexiconassociated with such a particular target audience, e.g. a particularcommunity, which information may be collected either by ad hoccompilation or by content analysis of electronic messages posted to theparticular target audience, e.g. messages posted to a particularcommunity or group as will be explained in more detail below.

FIG. 1 schematically depicts a hierarchical structure 100 that may beapplied to an electronic messaging system in accordance with embodimentsof the present invention. Central to this structure is a user 110, aswill be explained in further detail below may be the author of theelectronic message to be posted to the electronic messaging system or areader of an electronic message previously posted to the electronicmessaging system. Such a user is typically a member of one or morehierarchies 120, which may be a community of users sharing particularinterests. A hierarchy 120 may form part of a larger community 130. Insome embodiments, this separation may not be present, i.e. the separatehierarchical layer 120 may be omitted from the hierarchical structure100. A global administration layer 140 may also be present if messagecontent control, which will be explained in further detail below, mayneed to be provided beyond the hierarchical level 120 and/or thecommunity level 130.

FIG. 2 is a flow chart of a method 200 of controlling the content of anelectronic message on an electronic messaging system including aplurality of communities according to an embodiment. The method 200starts in step 202, in which a user, e.g. an author, accesses theelectronic messaging system in order to create a new message to beposted to the system, e.g. by opening a dialogue box or the like inwhich such an electronic message may be compiled. The user is typicallya member of a number of communities of the electronic messaging system,such that the message to be compiled by the user may be accessed bythese communities once posted to the electronic messaging system.

In order to ensure that each community is presented with an electronicmessage tailored to that particular community, in step 204 the lexiconis provided for a particular community of which the user is a member.The lexicon typically comprises indications of content relevant to theparticular community, such as keywords or descriptions of topics ofinterest, such that the content of the message compiled by the user canbe interpreted against these indications in order to determine if thecontent created by the user matches the content relevant to theparticular community. The lexicon may further comprise indications ofthe level of knowledge of an average member of the particular community,as well as indications of content that should not be disclosed to aparticular community, i.e. restricted content, for instance because ofreasons of confidentiality. It should be understood that these are justsome examples of what type of information may be comprised by such alexicon, and that other examples will be apparent to the skilled person.

A lexicon of a particular community may be created in any suitablemanner, for instance by manual compilation of the lexicon usingknowledge about the typical members of the relevant community. However,this may be a time-consuming process that may not always yieldsatisfactory results, for instance because the creator of the lexiconhas insufficient knowledge about the characteristics of the communitythat determine the content of the lexicon, which for instance may be thecase for large and/or diverse communities. Therefore, in an alternativeembodiment the lexicon may be built automatically. This for instance maybe achieved by evaluating the content of electronic messages previouslyposted to the community and identifying content, e.g. by identifyingkeywords either in isolation or within a particular context, or byidentifying and registering context relating to a particular subject,and so on. The evaluation may consider the unstructured data in suchmessages, e.g. written text, as well as tags, metadata, authorship,editorship and other information that can be used to assess therelevance of the message and/or content thereof. A thus created lexiconmay be stored in any suitable manner for accessing by the methods of thepresent invention, e.g. on a computer system hosting or providing accessto the electronic messaging system for access by the method of thepresent invention.

In an embodiment, such a lexicon may be built by evaluating the messagesof the community and determining an weight factor, e.g. a frequencyscore, for particular content in these messages in order to determine ifcertain content appears more regularly in such messages than other, andbuilding the lexicon based on identified content for which the weightfactor exceeds a defined threshold, such that the content deemedrelevant to the community is determined with a certain degree ofcertainty as provided by the occurrence metric. For instance, naturallanguage processing algorithms may be employed to scan the message datafor concept affinities, density of a concept contained within thematerial versus existing corpus information, as well as usual worddensity and/or frequency and unusual word placement, e.g. a possiblenoun used in the context of an adverb. The age of the documents, i.e.messages and/or their version may be also factored into the scoring.Such a weight factor threshold may be defined globally or specific toeach lexicon, for instance by an administrator.

The thus extracted content may be ranked within the lexicon in order ofrelevance, e.g. by assigning a weight factor such as a relevance scoreto the content, e.g. extracted terms, such that the lexicon may includea ranking structure based on such weight factors. This for instancefacilitates truncated searches of such a lexicon in case theconsideration of the entire lexicon is undesirable for some reason inwhich only the most relevant content, e.g. terms, for a particularcommunity is considered. For example, different lexicons may containdifferent numbers of instances of relevant content with different weightfactors, wherein by applying a weight factor threshold when consideringthe lexicon content it is ensured that for each considered lexicon onlycontent having a guaranteed minimum relevance is considered in themessage redaction process to be explained in further detail below.

In order to ensure that such a lexicon remains up-to-date, the messagesdirected or belonging to the community may be periodically updated, forinstance by determining adjustments to the weight factor of the relevantcontent in messages that are added to the community or deleted therefromusing the aforementioned processing techniques.

In addition to this building of the lexicon based on natural languageevaluation of the community messages, one or more iterations of machinelearning using unsupervised algorithms may be applied to adjust theweight factors, i.e. ranking scores, of the classified content. Multiplelearning pipelines may be used that independently score the content,which independent scores may be subsequently normalized and used tocorrect the ranking of the content in the lexicon, e.g. relevant terms.This allows for the lexicon accuracy to be improved by applying newclassification systems without losing accuracy of the existingpipelines.

In an embodiment, further refinement of the lexicon may be achieved byconsidering confidentiality of certain content of relevance to thecommunity. This for instance may be achieved by a further classificationstep that may detect such confidential content by looking for contextualinformation detailing the nature of the content within the message datathrough standard semantic analysis. This allows the lexicon to learnwhat part of the community domain language can be discussed outside ofthe community without explicit administrator intervention.

In an embodiment, the lexicon may be further refined by determining iffor some of the content the typical knowledge of the members of thecommunity is insufficient to fully appreciate the content, in which casesuch content may be flagged as content requiring additional information,which additional information may be added to a message available to thecommunity that comprises such content upon a member of the communityaccessing the message. For instance, such additional information may beprovided in the form of a link to a webpage explaining the content, e.g.a Wikipedia page or the like, or by explicitly inserting the explanationinto the original message as will be explained in more detail below.

The contents compiled in such a lexicon may be classified using rankingterms as previously explained. These ranking terms may for instancecontain the pipeline scoring and other metadata, e.g. Common AnalysisSystem (CAS) metadata. This for instance facilitates an administrator ofthe community to evaluate the raw CAS (Common Analysis System) metadatato determine how relevant content is classified, as well as to adjustscores/normalization levels of the relevant content based on his or herknowledge of the community interests. In addition, such an administratormay add rules to the community lexicon, e.g. confidentiality rules andthe like that force the deletion or replacement of certain terms in amessage under evaluation. For instance, the administrator may define arule that causes the method 200 to replace certain restricted terms withmore generic terms, e.g. a specific customer name with a more genericindication, e.g. “Customer”, an internal project name with a name underwhich the project is known to the outside world, the deletion of definedsensitive information, and so on.

Upon the provision of the lexicon of a particular community of which theauthor of the message is a member, the method 200 proceeds to step 206in which the message content, i.e. unstructured data is interpreted,i.e. evaluated in order to determine if the message contains contentrelevant to the community as specified in its lexicon. An exampleembodiment of such an interpretation method is explained with the aid ofFIG. 3, which schematically depicts a message 10 comprising unstructureddata 22. In an embodiment, after the user completes and submits theirmessage 10 to the electronic messaging system, the system performs anevaluation using the provided lexicon in which the unstructured data 22is annotated into blocks 20 based on criteria of the lexicon, e.g. usingthe CAS metadata. The electronic messaging system subsequently attemptsto determine the likelihood of the submitted content in the blocks 20being related to the relevant content in the lexicon of the community.This for instance may be achieved through standard unsupervised machinelearning, using the CAS objects as the basis for the classification. Assuch evaluation techniques are well-known per se, this will not beexplained in further detail for the sake of brevity.

In an embodiment, relevant content may be identified in the message 10by determining a confidence score for the content that expresses thedegree of confidence that the content is indeed related to content inthe lexicon of the particular community. Only content having aconfidence score exceeding a determined threshold may be consideredrelevant to that particular community. Such a confidence threshold maybe defined at the system level and applied to all community lexicons oralternatively may be individually defined for each lexicon, for instanceby an administrator of a community message board.

Step 206 may further comprise sub step in which the identified contentin a message 10 to be relevant to the particular community is furtherevaluated against the lexicon of that community to determine if furtherinformation, e.g. learning information to improve the knowledge of thecommunity on that particular content, needs to be added to the message10.

Upon the identification of such a relevant content, the method 200proceeds to step 208 in which the identified content in the message 10is tagged with metadata 30 containing redaction instructions fortailoring the message 10 such that upon accessing the message then by amember of the community which lexicon was used to determine the relevantcontent the message 10 may be redacted in accordance with the metadata30. Such redaction instructions may include any of the redaction ofspecific words, sentences and/or paragraphs from the message 10 in orderto make the redacted terms more appropriate to the community ofinterest, deletion of irrelevant or prohibited subject matter from themessage 10, insertion of learning content or links thereto as previouslyexplained, and so on. In an embodiment, such redaction instructions mayfurther comprise access control information, for instance to prevent amember of a particular community accessing the message 10 uponattempting to read it, for instance because the message 10 may containcontent that that particular community is prohibited from gaining accessto.

Next, it is checked in step 210 if the author of the message is a memberof further communities, in which case the method refers back to step 204in which the lexicon of the next community of which the author is a member is provided and the interpretation and annotation with metadata 30of the message is repeated for that lexicon. Once all communities ofwhich the author is a member have been processed in that manner themethod proceeds to step 212 in which the tag message may be processed,e.g. posted to the electronic messaging system such that when themessage is accessed by a member of a community of which the author is amember, the message 10 will be redacted in accordance with the metadata30 to provide the reader of the message with the accordingly redactedmessage, with the method ending at step 214, An example of such aredacted message 10 is schematically depicted in FIG. 4 in which it canbe seen when comparing the redacted message 10 in FIG. 4 with themessage 10 in FIG. 3 that some of the unstructured data 22 of the blocks20 in the original message 10 has been removed and some of theunstructured data 22 of the blocks 20 in the original message 10 hasbeen altered in accordance with the metadata 30 of relevance to thatparticular reader, thereby pro viding that reader with a message that istailored to the interests and access privileges of that reader.

In an embodiment, the interpretation step(s) 206 may be performed duringthe compilation of the message 10 prior to posting of the message by itsauthor. This for instance may be used to alert the author that certainparts of the message will be redacted when the message is posted to theelectronic messaging system such that the author may improve therelevance of the message 10 for his or her target audience prior toposting. To this end, the author may be provided, e.g. by displaying ona computer screen on which the author is writing the message, withfeedback information 40 as for instance is schematically depicted inFIG. 5. Such feedback information 40 for instance may comprise a warningthat the target audience may not understand some of the writteninformation 24 of the unstructured data 22, that certain content will berestricted to certain communities, e.g. because it is sensitiveinformation, or that certain content may require expanding on because itis of particular relevance to some of the communities of which theauthor is a member, e.g. because the content has a high ranking in thelexicon of such a community.

In an embodiment, such feedback information 40 may include anotification that the author will not be allowed to post the message 10to the electronic messaging system because it contains confidentialinformation that cannot be disclosed to the intended target audiences.In this case, the author may be asked to remove such content or to limitthe target audience to which the message is to be posted, for instanceby indicating that the message is to be posted to specific communitiesonly that are entitled to have access to the confidential information.

Such feedback information 40 may be provided at any suitable pointduring the creation of the message 10, e.g. during writing or during anattempt to post the message 10 to the electronic messaging system. Inthe latter scenario, the system may for instance ask the author toconfirm that the message 10 should indeed be posted in its present formdespite the fact that the message will be redacted when accessed by atleast some communities in order to provide the author with theopportunity to adjust the message 10 in accordance with the providedfeedback information 40.

When a member of a particular community to which the author of themessage 10 is a member and for which redaction metadata 30 has beenincluded in the message 10 subsequently opens the message, the messagewill be redacted in accordance with the redaction instructions definedby the metadata 30 for that particular community such that these readeris provided with a redacted version of the message 10 that has beentailored to the interests and/or privileges of that particular reader.In case the reader is a member of multiple communities for whichmetadata 30 is included in the message 10, a decision-making process maybe applied that decides which community is the most relevant communityfor that particular reader, which for instance may be based on thenumber of times the reader has posted to or accessed that communityforum, in order to determine which metadata 30 should be applied forredacting the message 10, It should be understood that thisdetermination process may take any suitable form.

In addition to the metadata 30, reader-specific information that isavailable to the system, such as browsing history, may be used tofurther shape the message to be displayed to the reader. For instance,the browsing history may indicate that the reader has a preference forshort or long messages, which information may be used to further redactthe message prior to displaying it to the reader, e.g. by including orexcluding content having a relatively low confidence score regarding therelevance of that content to a particular community to which the readerbelongs.

In an embodiment, when such a redacted message is created using themetadata 30, the redacted message may further comprise a link to theoriginal message (i.e. the unredacted message) such that the reader mayaccess the original message if of interest. However, this does require acheck to determine if the original message contains subject matter thatwas redacted, i.e. excluded or otherwise amended, for confidentialityreasons of like such that the reader cannot gain access to such arestricted content by simply clicking on the original message link. Thiswill be explained in more detail below.

FIG. 6 is a flow chart of a method 300 that may be invoked when a userof the electronic messaging system, i.e. a member of one or moreparticular communities attempts to share a previously posted messagethat has been tagged with redaction instructions, for instance byattempting to post the message to their feed. In step 302, the readerattempts to share the posted message, which triggers the method 300 tocheck which communities the reader is a member of. In this check,communities already covered in the metadata 30 of the accessed messagewill be ignored as for these communities the redaction instructions arealready present in the accessed message.

For communities not yet covered by the metadata 30, the message 300applies previously explained steps 204, 206, 208 and 210 until allhitherto uncovered communities with which the reader attempts to sharethe message have been evaluated and the message tagged with the relevantredaction instructions for these new communities. Once all communitiesof which the reader is a member have been processed in that manner themethod proceeds to step 312 in which the tag message is stored, e.g.posted to the electronic messaging system associated with the reader,with the method ending at step 314.

In an embodiment, after the content of the message to be shared has beeninterpreted against the various lexicons of these new communities, aseparate step (not shown) may be applied in which it is decided if themessage requires additional information, for instance to explain certaincontent in more detail. Such additional information may be included uponaccessing the tagged message without reference to a particularcommunity, i.e. the additional information may be made available to allcommunities having access to the tagged message. In such a scenario, itmay be desirable to determine the most relevant community or communitiesof which the reader is a member in order to maximize the likelihood thatthe additional information to be included in the tagged message uponopening is indeed of interest or relevant to the majority of the targetaudience of the reader sharing the message. This for instance may beachieved by determining a confidence score for each community the readeris a member of as previously explained, e.g. by determining the numberof messages posted by the reader to the community, by determining theaccess frequency of a message board of the community by the reader, andso on. The community having the highest confidence score may be used todetermine if such learning information should be included in themessage. In case of a deadlock between communities having equalconfidence scores, any suitable selection criterion for picking one ofthe communities to be used in this determination may be applied, such asa virtual coin flip, first occurring community in an alphabeticallyordered list, youngest or oldest community, and so on.

As previously mentioned, the electronic messaging system may include alink to the original message 10 in a redacted message displayed to areader. In case such a reader attempts to access the original message, adecision making process has to be invoked that the checks if the readeris in fact entitled to gain access to the original message. FIG. 7depicts a flowchart of an example embodiment of a method 400implementing such a decision making process. The method starts in step402 by the reader of the tagged message clicking the link to theoriginal message. This triggers the execution of step 404 in which thecommunities to which the reader is related are retrieved, e.g. from auser profile of the reader, after which the method proceeds to step 406in which the lexicons of these communities and/or global or local accessrules set by the administrator to indicate which communities may accesswhat type of content are retrieved.

In step 408, it is subsequently checked if the original message containsany content for which access has been restricted for any of thecommunities to which the reader is related. If no such restrictionsapply to any of the communities to which the reader is related, themethod proceeds to step 410 in which the original message is displayedto the reader, with the method ending at step 414. However, in at leastone of the communities to which the reader is related is prevented fromgaining access to at least some of the content in the original message,the method proceeds to step 412 in which the reader is informed thataccess to the original message is refused, which information may furthercomprise a list of the communities to which the reader is related suchthat the reader may contact such communities, e.g. their administrators,if so desired in order to seek further information, e.g. clarification,from these communities regarding the content of interest, with themethod ending at step 414.

In the above embodiments, posted messages are tagged with metadata 30 inorder to facilitate the redacting of those messages using the metadata30. However, it should be understood that it is feasible to perform theredacting on-the-fly, in which case multiple redacted messages may becreated that each are stored in the local domain of a particularcommunity, such that different domains comprise differently redactedversions of the same message, thereby obviating the need for theinclusion of the metadata 30 in the messages. This of course comes atthe expense of message duplication across the electronic messagingsystem and may be less suitable for messaging systems where usersroutinely have access to the message domains of multiple communities.

FIG. 8 schematically depicts a computer system 500 including a processorarrangement 510, e.g. one or more processors, adapted to host anelectronic messaging system according to an embodiment. The computersystem 500 for instance may comprise a computer program productincluding a computer-readable medium 520 that is communicatively coupledto the processor arrangement 510 and that contains computer-readableinstructions that can be executed by the processor arrangement 510,which instructions cause the processor arrangement 510 to implement oneor more embodiments of the aforementioned methods of the presentinvention. Such a computer-readable medium 520 will be some form of datastorage device or a data signal as will be explained in further detailbelow. The computer system 500 may further comprise a furthercomputer-readable medium 530 that stores the electronic messages 10 ofthe electronic messaging system hosted by the computer system 500. Anysuitable computer-readable medium 530 may be contemplated, such as adata storage medium physically integrated in a computer system 500 orattached to the computer system 500, e.g. through a network such as alocal area network or the Internet, e.g. the computer-readable medium530 may be cloud-based. In an alternative embodiment, thecomputer-readable medium 520 and the further computer-readable medium530 may form part of a single medium, e.g. a single data storage deviceor the like.

The computer system 500 is typically connected to a network 540 througha network interface (not shown) for providing a remote client 550 accessto the computer system 500 over the network 540. Such a remote client by50 for instance may be a remote personal computer, a portable devicesuch as a smart phone, tablet, personal digital assistant, and so on.The network 540 may be a wireless network, e.g. a wireless LAN, a 3G or4G mobile communications network, and so on or may be a wired network,e.g. a LAN, WAN and so on. In an embodiment, the network 540 may providethe physical backbone of a connection of the computer system 500 to theInternet or a restricted network such as an enterprise Intranet or anyother suitable type of data communication network as will be immediatelyapparent to the skilled person.

The present invention may be a (computer) system, a method, and/or acomputer program product. The computer program product may include acomputer readable storage medium (or media) having computer readableprogram instructions thereon for causing a processor to carry outaspects of the present invention.

The computer readable storage medium can be a tangible device that canretain and store instructions for use by an instruction executiondevice. The computer readable storage medium may be, for example, but isnot limited to, an electronic storage device, a magnetic storage device,an optical storage device, an electromagnetic storage device, asemiconductor storage device, or any suitable combination of theforegoing. A non-exhaustive list of more specific examples of thecomputer readable storage medium includes the following: a portablecomputer diskette, a hard disk, a random access memory (RAM), aread-only memory (ROM), an erasable programmable read-only memory (EPROMor Flash memory), a static random access memory (SRAM), a portablecompact disc read-only memory (CD-ROM), a digital versatile disk (DVD),a memory stick, a floppy disk, a mechanically encoded device such aspunch-cards or raised structures in a groove having instructionsrecorded thereon, and any suitable combination of the foregoing. Acomputer readable storage medium, as used herein, is not to be construedas being transitory signals per se, such as radio waves or other freelypropagating electromagnetic waves, electromagnetic waves propagatingthrough a waveguide or other transmission media (e.g., light pulsespassing through a fiber-optic cable), or electrical signals transmittedthrough a wire.

Computer readable program instructions described herein can bedownloaded to respective computing/processing devices from a computerreadable storage medium or to an external computer or external storagedevice via a network, for example, the Internet, a local area network, awide area network and/or a wireless network. The network may comprisecopper transmission cables, optical transmission fibers, wirelesstransmission, routers, firewalls, switches, gateway computers and/oredge servers. A network adapter card or network interface in eachcomputing/processing device receives computer readable programinstructions from the network and forwards the computer readable programinstructions for storage in a computer readable storage medium withinthe respective computing/processing device.

Computer readable program instructions for carrying out operations ofthe present invention may be assembler instructions,instruction-set-architecture (ISA) instructions, machine instructions,machine dependent instructions, microcode, firmware instructions,state-setting data, or either source code or object code written in anycombination of one or more programming languages, including an objectoriented programming language such as Smalltalk, C++ or the like, andconventional procedural programming languages, such as the “C”programming language or similar programming languages. The computerreadable program instructions may execute entirely on the user'scomputer, partly on the user's computer, as a stand-alone softwarepackage, partly on the user's computer and partly on a remote computeror entirely on the remote computer or server. In the latter scenario,the remote computer may be connected to the user's computer through anytype of network, including a local area network (LAN) or a wide areanetwork (WAN), or the connection may be made to an external computer(for example, through the Internet using an Internet Service Provider).In some embodiments, electronic circuitry including, for example,programmable logic circuitry, field-programmable gate arrays (FPGA), orprogrammable logic arrays (PLA) may execute the computer readableprogram instructions by utilizing state information of the computerreadable program instructions to personalize the electronic circuitry,in order to perform aspects of the present invention.

Aspects of the present invention are described herein with reference toflowchart, illustrations and/or block diagrams of methods, apparatus(systems), and computer program products according to embodiments of theinvention. It will be understood that each block of the flowchartillustrations and/or block diagrams, and combinations of blocks in theflowchart illustrations and/or block diagrams, can be implemented bycomputer readable program instructions.

These computer readable program instructions may be provided to aprocessor of a general purpose computer, special purpose computer, orother programmable data processing apparatus to produce a machine, suchthat the instructions, which execute via the processor of the computeror other programmable data processing apparatus, create means forimplementing the functions/acts specified in the flowchart and/or blockdiagram block or blocks. These computer readable program instructionsmay also be stored in a computer readable storage medium that can directa computer, a programmable data processing apparatus, and/or otherdevices to function in a particular manner, such that the computerreadable storage medium having instructions stored therein comprises anarticle of manufacture including instructions which implement aspects ofthe function/act specified in the flowchart and/or block diagram blockor blocks.

The computer readable program instructions may also be loaded onto acomputer, other programmable data processing apparatus, or other deviceto cause a series of operational steps to be performed on the computer,other programmable apparatus or other device to produce a computerimplemented process, such that the instructions which execute on thecomputer, other programmable apparatus, or other device implement thefunctions/acts specified in the flowchart and/or block diagram block orblocks.

The flowchart and block diagrams in the Figures illustrate thearchitecture, functionality, and operation of possible implementationsof systems, methods, and computer program products according to variousembodiments of the present invention. In this regard, each block in theflowchart or block diagrams may represent a module, segment, or portionof instructions, which comprises one or more executable instructions forimplementing the specified logical function(s). In some alternativeimplementations, the functions noted in the block may occur out of theorder noted in the Figures. For example, two blocks shown in successionmay, in fact, be executed substantially concurrently, or the blocks maysometimes be executed in the reverse order, depending upon thefunctionality involved. It will also be noted that each block of theblock diagrams and/or flowchart illustration, and combinations of blocksin the block diagrams and/or flowchart illustration, can be implementedby special purpose hardware-based systems that perform the specifiedfunctions or acts or carry out combinations of special purpose hardwareand computer instructions.

While particular embodiments of the present invention have beendescribed herein for purposes of illustration, many modifications andchanges will become apparent to those skilled in the art. Accordingly,the appended claims are intended to encompass all such modifications andchanges as fall within the scope of this invention.

The invention claimed is:
 1. A method for controlling content of anelectronic message on an electronic messaging system including aplurality of community message boards, the method comprising: providing,by the electronic messaging system, a separate electronic lexicon foreach community message board in the plurality of community messageboards, each electronic lexicon defining content relevant to itsassociated community message board, wherein the content relevant to thecommunity message board is identified based on a weight factor of one ormore terms related to the content in the electronic messages;determining, by the electronic messaging system, a confidence score foreach community message board the user is a member of; interpreting, bythe electronic messaging system, the electronic message for disclosureto a particular community message board to identify content in theelectronic message relating to content in the electronic lexicon of theparticular community message board based on the electronic lexicon ofthe community message board having a highest confidence score;redacting, by the electronic messaging system, one or more pieces ofirrelevant content in the electronic message based on identifyingrelated content using the electronic lexicon of the particular communitymessage board and any other content in the electronic message that isnot in the electronic lexicon of the particular community message boardbeing identified as the one or more pieces of irrelevant content andbased on the electronic lexicon of the community message board having ahighest confidence score, forming a redacted electronic message; andposting, by the electronic messaging system, the redacted electronicmessage to the particular community message board controlled by theelectronic messaging system.
 2. The method of claim 1, whereininterpreting the electronic message for disclosure to the particularcommunity message board further comprises: tagging, by the electronicmessaging system, content in the electronic message with metadataincluding redaction instructions, wherein redacting the one or morepieces of irrelevant content in the electronic message furthercomprises: redacting, by the electronic messaging system, the taggedcontent in accordance with the redaction instructions.
 3. The method ofclaim 1, wherein interpreting the electronic message for disclosure tothe particular community message board further comprises: performing, bythe electronic messaging system, an evaluation of a part of theelectronic message to determine whether the part of the electronicmessage contains content related to the content in the electroniclexicon.
 4. The method of claim 1, further comprising: performing, bythe electronic messaging system, the interpreting of the electronicmessage for disclosure to the particular community message board and theredaction of the one or more pieces of irrelevant content in theelectronic message in response to a user being a member of theparticular community message board trying to access or share theelectronic message.
 5. The method of claim 4, wherein performing theinterpreting of the electronic message for disclosure to the particularcommunity message board and the redaction of the one or more pieces ofirrelevant content in the electronic message comprises: amending, by theelectronic messaging system, redaction instructions for the electronicmessage based on the lexicon of the particular community message boardof which the user is a member.
 6. The method of claim 1, furthercomprising: performing, by the electronic messaging system, theinterpreting of the electronic message for disclosure to the particularcommunity message board and the redaction of the one or more pieces ofirrelevant content in the electronic message prior to posting of theelectronic message to the electronic messaging system by the author ofthe electronic message.
 7. The method of claim 6, further comprising:identifying, by the electronic messaging system, community messageboards of which the author is a member; and repeating, by the electronicmessaging system, the interpreting of the electronic message fordisclosure to the particular community message board and the redactionof the one or more pieces of irrelevant content in the electronicmessage for each of the identified community message boards.
 8. Themethod of claim 6, further comprising: providing, by the electronicmessaging system, the author of the electronic message with redactionfeedback in response to performing the interpreting of the electronicmessage for disclosure to the particular community message board priorto posting of the electronic message to the electronic messaging system.9. The method of claim 1, wherein the redaction of the one or morepieces of irrelevant content in the electronic message comprises atleast one of: expanding, by the electronic messaging system, contentrelevant to the particular community message board; inserting, by theelectronic messaging system, a link to the electronic message in theredacted electronic message; or renaming, by the electronic messagingsystem, content in the electronic message in accordance with renamingrules defined for the particular community message board.
 10. The methodof claim 9, further comprising: checking, by the electronic messagingsystem, whether a reader of the redacted electronic message is allowedto access to the electronic message upon the reader trying to access theelectronic message via the link by checking which community messageboards the reader is associated with; and preventing, by the electronicmessaging system, the access in response to the reader being associatedwith a community message board for which the electronic message has beenredacted.
 11. The method of claim 1, wherein: the interpreting of theelectronic message for disclosure to the particular community messageboard comprises determining a score for content in the electronicmessage expressing a confidence level regarding a relevance of thecontent for the particular community message board; and the redaction ofthe one or more pieces of irrelevant content in the electronic messagecomprises redacting the electronic message as a function of the score.12. The method of claim 1, wherein the redaction of the one or morepieces of irrelevant content in the electronic message furthercomprises: redacting, by the electronic messaging system, the electronicmessage based on global administration settings.
 13. The method of claim1, wherein providing the separate electronic lexicon comprises:evaluating, by the electronic messaging system, electronic messagesposted to the community message board of the separate electronic lexiconto identify the content relevant to the community message board.
 14. Themethod of claim 13, further comprising: adjusting, by the electronicmessaging system, the separate electronic lexicon based on relevantcontent in electronic messages added to or removed from the communitymessage board.
 15. A computer program product comprising anon-transitory computer-readable storage medium having acomputer-readable program stored therein, wherein the computer-readableprogram, when executed on a computer system, causes the computing deviceto: provide a separate electronic lexicon for each community messageboard in a plurality of community message boards, each electroniclexicon defining content relevant to its associated community messageboard, wherein the content relevant to the community message board isidentified based on a weight factor of one or more terms related to thecontent in the electronic messages; determining, by the electronicmessaging system, a confidence score for each community message boardthe user is a member of; interpret the electronic message for disclosureto a particular community message board to identify content in theelectronic message relating to content in the electronic lexicon of theparticular community message board based on the electronic lexicon ofthe community message board having a highest confidence score; redactone or more pieces of irrelevant content in the electronic message basedon identifying related content using the electronic lexicon of theparticular community message board and any other content in theelectronic message that is not in the electronic lexicon of theparticular community message board being identified as the one or morepieces of irrelevant content and based on the electronic lexicon of thecommunity message board having a highest confidence score, forming aredacted electronic message; and post the redacted electronic message tothe particular community message board controlled by the electronicmessaging system.
 16. An electronic messaging system comprising: aprocessor; and a memory coupled to the processor, wherein the memorycomprises instructions which, when executed by the processor, cause theprocessor to: provide a separate electronic lexicon for each communitymessage board in a plurality of community message boards, eachelectronic lexicon defining content relevant to its associated communitymessage board, wherein the content relevant to the community messageboard is identified based on a weight factor of one or more termsrelated to the content in the electronic messages; determining, by theelectronic messaging system, a confidence score for each communitymessage board the user is a member of; interpret the electronic messagefor disclosure to a particular community to identify content in theelectronic message relating to content in the electronic lexicon of theparticular community message board based on the electronic lexicon ofthe community message board having a highest confidence score; redactone or more pieces of irrelevant content in the electronic message basedon identifying related content using the electronic lexicon of theparticular community message board and any other content in theelectronic message that is not in the electronic lexicon of theparticular community message board being identified as the one or morepieces of irrelevant content and based on the electronic lexicon of thecommunity message board having a highest confidence score, forming aredacted electronic message; and post the redacted electronic message tothe particular community message board controlled by the electronicmessaging system.
 17. The computer system of claim 16, wherein theinstructions to interpret the electronic message for disclosure to theparticular community message board further causes the processor to: tagcontent in the electronic message with metadata including redactioninstructions, wherein redacting the one or more pieces of irrelevantcontent in the electronic message further comprises: redact the taggedcontent in accordance with the redaction instructions.
 18. The computersystem of claim 16, wherein the instructions to interpret the electronicmessage for disclosure to the particular community message board furthercauses the processor to: perform an evaluation of a part of theelectronic message to determine whether the part of the electronicmessage contains content related to the content in the electroniclexicon.